home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 5 / BBS in a Box -Volume V (BBS in a Box) (April 1992).iso / Files / Bus / H-L / Invoicer.cpt / Statement < prev    next >
Encoding:
Text File  |  1988-01-18  |  8.9 KB  |  385 lines  |  [TEXT/MSBA]

  1.  
  2.   CodeChk:
  3.     CLS
  4.     TEXTSIZE (24):TEXTFACE(5)
  5.     PRINT:PRINT SPC(7);"MONTHLY STATEMENT"
  6.     TEXTSIZE(12):TEXTFACE(0)
  7.     INPUT"Customer Code ('help' for code list): ",CO$
  8.     IF CO$="help" OR CO$ = "h" THEN CLS: GOTO ListCodes
  9.     IF CO$="quit" OR CO$="q" THEN CLS:LOAD "Open Me First",R
  10.     IF LEN(CO$)<>2 THEN RUN
  11. GOSUB Code
  12.  
  13. StatementScreen:
  14.     CLS
  15.     TEXTSIZE (24):TEXTFACE(5)
  16.     PRINT:PRINT SPC(7);"MONTHLY STATEMENT"
  17.     WINDOW 2,"",(25,100)-(476,200),3
  18.     TEXTFACE(1):TEXTSIZE(14)
  19.     PRINT SPC(3);"MONTH"
  20.     BUTTON 1,1,"jan",(25,30)-(75,55),1
  21.     BUTTON 2,1,"feb",(95,30)-(145,55),1
  22.     BUTTON 3,1,"mar",(165,30)-(215,55),1
  23.     BUTTON 4,1,"apr",(235,30)-(285,55),1
  24.     BUTTON 5,1,"may",(305,30)-(355,55),1
  25.     BUTTON 6,1,"jun",(375,30)-(425,55),1
  26.     BUTTON 7,1,"jul",(25,65)-(75,90),1
  27.     BUTTON 8,1,"aug",(95,65)-(145,90),1
  28.     BUTTON 9,1,"sep",(165,65)-(215,90),1
  29.     BUTTON 10,1,"oct",(235,65)-(285,90),1
  30.     BUTTON 11,1,"nov",(305,65)-(355,90),1
  31.     BUTTON 12,1,"dec",(375,65)-(425,90),1
  32.     WHILE DIALOG(0)<>1:WEND
  33.     ButtonPushed =DIALOG(1)
  34.     IF ButtonPushed = 1 THEN sd$="01": BOS$="01-01-": EOS$="01-31-"
  35.     IF ButtonPushed = 2 THEN sd$="02": BOS$="02-01-": EOS$="02-28-"
  36.     REM LEAP YEAR CHECK HERE
  37.         LeapChk$=RIGHT$ (DATE$,4)
  38.     IF ButtonPushed = 2 AND (VAL(LeapChk$))/4=INT(VAL(LeapChk$))/4 THEN EOS$="02-29-"
  39.     IF ButtonPushed = 3 THEN sd$="03": BOS$="03-01-": EOS$="03-31-"
  40.     IF ButtonPushed = 4 THEN sd$="04": BOS$="04-01-": EOS$="04-30-"
  41.     IF ButtonPushed = 5 THEN sd$="05": BOS$="05-01-": EOS$="05-31-"
  42.     IF ButtonPushed = 6 THEN sd$="06": BOS$="06-01-": EOS$="06-30-"
  43.     IF ButtonPushed = 7 THEN sd$="07": BOS$="07-01-": EOS$="07-31-"
  44.     IF ButtonPushed = 8 THEN sd$="08": BOS$="08-01-": EOS$="08-31-"
  45.     IF ButtonPushed = 9 THEN sd$="09": BOS$="09-01-": EOS$="09-30-"
  46.     IF ButtonPushed = 10 THEN sd$="10": BOS$="10-01-": EOS$="10-31-"
  47.     IF ButtonPushed = 11 THEN sd$="11": BOS$="11-01-": EOS$="11-30-"
  48.     IF ButtonPushed = 12 THEN sd$="12": BOS$="12-01-": EOS$="12-31-"
  49.  
  50.     WINDOW OUTPUT 1:CLS
  51.     WINDOW CLOSE 2
  52.     
  53.   SecScreen:
  54.     CLS
  55.     REM WINDOW CLOSE 1
  56.   Address:
  57.      REM WINDOW 3,"Statement",(2,40)-(508,337),1
  58.      TEXTFACE (1): TEXTSIZE (12)
  59.      PRINT CN$
  60.      PRINT AD1$
  61.      PRINT AD2$;", ";AD3$;"  ";
  62.      PRINT zp$
  63.      OPEN CO$ FOR INPUT AS #1
  64.      INPUT #1, BF
  65.      CLOSE #1
  66.   
  67.      CustomerName$=CN$:AddressI$=AD1$:AddressII$=AD2$:AddressIII$=AD3$
  68.      TEXTSIZE(10)
  69.      PRINT TAB(26);"Activity from:  "; BOS$;RIGHT$(DATE$,4)
  70.      PRINT"Statement date: "; DATE$;
  71.      PRINT TAB(35);"to: "; EOS$;RIGHT$(DATE$,4);
  72.      db$=DATE$
  73.     
  74.      WINDOW 2,"",(7,120)-(175,333),3
  75.      PRINT
  76.      TEXTSIZE(18):TEXTFACE(5)
  77.      PRINT" billed                "
  78.      TEXTSIZE(9):TEXTFACE(1)
  79.      
  80.      OPEN "Accts Billed" FOR INPUT AS #1
  81.   Reedata:
  82.    IF EOF(1) THEN ttl
  83.    INPUT #1,ts$
  84.    INPUT #1,CO$
  85.    INPUT#1, db$
  86.    INPUT#1, CN$
  87.    INPUT#1,IT$
  88.  
  89.    IF CO$<>cd$ THEN Reedata
  90.    IF LEFT$(db$,2)>sd$ THEN ttl
  91.    IF LEFT$(db$,2)<>sd$ THEN Reedata
  92.    
  93.    TEXTFACE(0)
  94.    PRINT SPC(1); db$;TAB(18);
  95.    TEXTFACE (1)
  96.    IT=VAL(IT$)
  97.    PRINT USING "$####.##";IT
  98.    tt=tt+IT
  99.    IF EOF(1) THEN ttl
  100.    GOTO Reedata
  101.  
  102.    ttl:
  103.      PRINT:PRINT SPC (1);"TOTAL";
  104.      TEXTFACE(0)
  105.      PRINT TAB(18);
  106.      TEXTFACE(1)
  107.      PRINT USING"$####.##"; tt;
  108.      totalbilled=tt
  109.      tt=0
  110.      CLOSE #1
  111.      
  112.      WINDOW 3,"",(206,120)-(376,333),3
  113.      PRINT
  114.      TEXTSIZE(18):TEXTFACE(5)
  115.      PRINT" credit               "
  116.      TEXTSIZE(9):TEXTFACE(1)
  117.  
  118.           OPEN "Accts Recd" FOR INPUT AS #1
  119.   Readata:
  120.    IF EOF(1) THEN totl
  121.    INPUT #1,ts$
  122.    INPUT #1,CO$
  123.    INPUT#1, dr$
  124.    INPUT#1, CN$
  125.    INPUT#1,IT$
  126.  
  127.    IF CO$<>cd$ THEN Readata
  128.    IF LEFT$(dr$,2)>sd$ THEN totl
  129.    IF LEFT$(dr$,2)<>sd$ THEN Readata
  130.  
  131.    TEXTFACE(0)
  132.    PRINT SPC(1); dr$;TAB(18);
  133.    TEXTFACE (1)
  134.    IT=VAL(IT$)
  135.    PRINT USING "$####.##";IT
  136.    tt=tt+IT
  137.    IF EOF(1) THEN totl
  138.    GOTO Readata
  139.  
  140.    totl:
  141.      PRINT:PRINT SPC(1);"TOTAL";
  142.      TEXTFACE(0)
  143.      PRINT TAB(18);
  144.      TEXTFACE(1)
  145.      PRINT USING"$####.##"; tt;
  146.      totalpaid=tt
  147.      CLOSE #1
  148.      PRINT:PRINT
  149.      TEXTFACE(0)
  150.      PRINT SPC(1);"Balance ("; BOS$;RIGHT$(DATE$,2);")";TAB(18);
  151.      TEXTFACE(1)
  152.      BgBal=(BF+totalpaid)-totalbilled
  153.      PRINT USING"$####.##"; BgBal
  154.      PRINT
  155.      TEXTFACE(0)
  156.      PRINT SPC(1);"Balance ("; EOS$;RIGHT$(DATE$,2);")";TAB(18);
  157.      TEXTFACE(1)
  158.      PRINT USING"$####.##"; BF
  159.      tt=0
  160.      
  161.    Choyce2:
  162.        WINDOW 4,"",(400,60)-(463,333),-3
  163.        BUTTON 1,1,"print",(7,25)-(55,80),1
  164.        BUTTON 2,1,"new",(7,100)-(55,160),1
  165.        BUTTON 3,1,"quit",(7,180)-(55,240),1
  166.        WHILE DIALOG(0)<>1:WEND
  167.        ButtonPushed = DIALOG(1)
  168.        IF ButtonPushed=1 THEN PrntWarning
  169.        IF ButtonPushed =2 THEN  WINDOW OUTPUT 1: CLS: WINDOW CLOSE 2:WINDOW CLOSE 3:WINDOW CLOSE 4: GOTO YourChoyce
  170.        IF ButtonPushed =3 THEN WINDOW OUTPUT 1: CLS: WINDOW CLOSE 2:WINDOW CLOSE 3:WINDOW CLOSE 4: LOAD "Open Me First",R
  171. YourChoyce:
  172.     WINDOW OUTPUT 1
  173.     CLS
  174.     BUTTON 1,1,"monthly activity",(25,50)-(200,100),1
  175.     BUTTON 2,1,"invoices outstanding",(25,120)-(200,170),1
  176.     BUTTON 3,1,"never mind",(25,190)-(200,240),1
  177.     WHILE DIALOG(0)<>1:WEND
  178.     ButtonPushed = DIALOG(1)
  179.     IF ButtonPushed = 1 THEN BUTTON CLOSE 1: BUTTON CLOSE 2: BUTTON CLOSE 3: RUN
  180.     IF ButtonPushed = 2 THEN BUTTON CLOSE 1: BUTTON CLOSE 2: BUTTON CLOSE 3: CLEAR: LOAD "Invoice Statement",R
  181.     IF ButtonPushed = 3 THEN BUTTON CLOSE 1: BUTTON CLOSE 2: BUTTON CLOSE 3: LOAD "Open Me First",R
  182.  
  183.   PrntWarning:
  184.     WINDOW 4,"",(55,180)-(310,280),-2
  185.     TEXTFACE(1)
  186.     PRINT:PRINT"Please make sure printer is turned"
  187.     PRINT"on and loaded with paper."
  188.     BUTTON 1,1,"OK",(105,55)-(165,75),1
  189.     BUTTON 2,1,"cancel",(185,55)-(245,75),1
  190.     WHILE DIALOG(0)<>1:WEND
  191.     ButtonPushed =DIALOG(1)
  192.     IF ButtonPushed=1 THEN WINDOW OUTPUT 2:CLS:WINDOW OUTPUT 3:CLS:WINDOW CLOSE 4
  193.     IF ButtonPushed=2 THEN WINDOW OUTPUT 2:CLS:WINDOW OUTPUT 3:CLS:WINDOW CLOSE 4:GOTO Choyce2
  194.  
  195.      FOR mp=1 TO 7
  196.      LPRINT CHR$(10)
  197.      NEXT
  198.      LPRINT TAB(8); CustomerName$
  199.      LPRINT TAB(8); AddressI$
  200.      LPRINT TAB(8); AddressII$;", ";AddressIII$;"  ";
  201.      LPRINT zp$
  202.  
  203.   SkpZp:
  204.     FOR mp= 1 TO 2
  205.     LPRINT CHR$(10)
  206.     NEXT
  207.     LPRINT TAB(2); "Statement date: "; DATE$;
  208.     LPRINT TAB(47); "Activity from: "; BOS$; RIGHT$(DATE$,4); " to "; EOS$;RIGHT$(DATE$,4)
  209.     
  210.     FOR m = 1 TO 2
  211.     LPRINT CHR$(10)
  212.     NEXT
  213.     tbloc = 2: tblocII=18:WhichAccount$="Accts Billed": Title$="Billed"
  214.   ColumnPrnt:
  215.     count = 0
  216.     LPRINT TAB (tbloc);
  217.     LPRINT CHR$(27);"X";
  218.     LPRINT Title$;
  219.     LPRINT CHR$(27);"Y";
  220.     LPRINT CHR$(10)
  221.     
  222.     OPEN WhichAccount$ FOR INPUT AS #1
  223.           
  224.   Reeedata:
  225.    IF EOF(1) THEN total
  226.    INPUT #1,ts$
  227.    INPUT #1,CO$
  228.    INPUT#1, db$
  229.    INPUT#1, CN$
  230.    INPUT#1,IT$
  231.  
  232.    IF CO$<>cd$ THEN Reeedata
  233.    IF LEFT$(db$,2)>sd$ THEN total
  234.    IF LEFT$(db$,2)<>sd$ THEN Reeedata
  235.  
  236.    LPRINT TAB(tbloc); db$;TAB(tblocII);
  237.    IT=VAL(IT$)
  238.    LPRINT USING "$####.##";IT
  239.    tt=tt+IT
  240.    count = count +1
  241.    IF EOF(1) THEN total
  242.    GOTO Reeedata
  243.  
  244.    total:
  245.      LPRINT CHR$(10)
  246.      LPRINT TAB(tbloc);"TOTAL";
  247.      LPRINT TAB(tblocII);
  248.      LPRINT USING"$####.##"; tt
  249.      IF tbloc <>2 THEN RecdTotal
  250.    
  251.    BilledTotal:
  252.      downbilled=count
  253.      totalbilled=tt
  254.      tt=0
  255.      CLOSE #1
  256.      GOTO BackUp
  257.      
  258.    RecdTotal:
  259.      downrecd=count
  260.      totalreceived=tt
  261.      tt=0
  262.      CLOSE #1
  263.      IF downbilled > downrecd THEN downboth = (downbilled - downrecd) ELSE downboth=(downrecd - downbilled)
  264.      IF downboth = 0 THEN downboth = 1
  265.      FOR x = 1 TO downboth
  266.      LPRINT CHR$ (10)
  267.      NEXT
  268.      LPRINT TAB(2);"BALANCE ("; BOS$;RIGHT$(DATE$,2);"):";TAB(22);
  269.      LPRINT USING"$####.##"; BgBal;
  270.      LPRINT TAB(40);"BALANCE ("; EOS$;RIGHT$(DATE$,2);"):";TAB(60);
  271.      LPRINT USING"$####.##"; BF
  272.      tt=0
  273.      GOTO Choyce2
  274.     
  275.   BackUp:
  276.     LPRINT CHR$(27);"r"
  277.     FOR bu=1 TO count+5
  278.     LPRINT TAB(0);""
  279.     NEXT bu
  280.     LPRINT CHR$(27);"f"
  281.     tbloc = 40: tblocII=58:WhichAccount$="Accts Recd": Title$="Credit"
  282.     GOTO ColumnPrnt
  283.     
  284.   Code:
  285.     CLOSE #1
  286.     OPEN "Customers A" FOR INPUT AS #1
  287.   ReedIt:
  288.     IF EOF(1) THEN CLOSE #1: CLS:TEXTFACE(1):PRINT:PRINT"This customer not on file…":FOR m = 1 TO 2500:NEXT:CLS:RUN
  289.     INPUT #1,cd$,CN$,AD1$,AD2$,AD3$,zp$,ts$
  290.     IF cd$=CO$ THEN CLOSE #1:GOTO StatementScreen
  291.     GOTO ReedIt
  292.   ListCodes:
  293. CLS
  294.   Lst:
  295.      OPEN "Customers B" FOR INPUT AS #1
  296.      WINDOW 2,"",(25,50)-(476,280),3
  297.   OpFile:
  298.      TEXTFACE(1)
  299.      IF EOF(1) THEN CLOSE #1:TEXTFACE(0):GOTO NewWndw
  300.      INPUT #1,cd$,CN$,ts$
  301.      PRINT cd$;
  302.      PRINT" - ";CN$
  303.      GOTO OpFile
  304.  
  305.   NewWndw:
  306.  WINDOW 3,"",(25,285)-(476,330),-3
  307.     BUTTON 1,1,"again",(55,10)-(130,35),1
  308.     BUTTON 2,1,"enter info",(192,10)-(267,35),1
  309.     BUTTON 3,1,"quit",(329,10)-(404,35),1
  310.       WHILE DIALOG(0)<>1:WEND
  311.       ButtonPushed = DIALOG(1)
  312.       IF ButtonPushed = 1 THEN Lst
  313.       IF ButtonPushed  = 2 THEN  WINDOW CLOSE 2:WINDOW CLOSE 3:RUN
  314.       IF ButtonPushed  = 3 THEN LOAD "Open Me First",R
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.